1. Field of Invention
The present invention relates to the handling of data arriving at a communications device, such as a network switch that directs the flow of that data. More specifically, the method and apparatus allow for the application of rules to the data to be handled such that the data can be classified, filtered and processed.
2. Description of Related Art
A high speed network utilizes network devices to control data flowing through a network, where the network devices receive incoming data and pass the data on to other network devices. The passage of the data through the network is accomplished by examination of at least a portion of the incoming data. These network devices are often required to perform many functions, including packet or frame classification, packet processing or filtering, quality of service (QoS) or class of service (CoS) enforcement, application server load balancing, and statistics data gathering for packet traffic and processing.
Classification of frames or packets is an important process in many network device systems such as routers, switches, bridges, hubs, and aggregators. Packets may be identified as being in certain classes based on their source, destination, bandwidth requirements, and application types. Different classes of packets can receive differentiated processes such as different latencies, transmission rate, and routing paths to provide most desirable services to all packets. Filtering of packets is a crucial process of ensuring network security such as with a firewall or a way of forwarding packets only to intended destinations. Packet filtering performs the granting of access or the blocking of packets for certain application types and protocols. It can also allow or block packets' access to a network based on their subnet, group of hosts, or individual host information. The information of QoS (Quality of Service) or CoS (Class of Service) is usually embedded in the header of packets such as VLANID (Virtual Bridged Local Area Network Identification), TOS (type of service), DiffServ (Differentiated Service) field information.
The prior art network devices can provide such classification of frames or packets, but those classification processes employed by the devices are often cumbersome and difficult to make changes thereto. The prior art devices are also limited in how they can be customized and provide limited options for how data should be handled once a classification match is made. Also, because of the processes applied by the prior art network devices in classification, the throughput of a network can be negatively affected.
Thus, there is a need for a processing and classification engine that allows the engine to be customized without underutilizing the processing abilities of the switch. Additionally, there is also a need for a switch architecture that allows for expandability and continued customization after the sale of the initial switch configuration.